package org.inspiration.dudu.web.service.user;

import org.inspiration.dudu.user.model.dto.FavoriteFolderDTO;
import org.inspiration.dudu.user.model.vo.FavoriteFolderVO;

import java.util.List;

/**
 * FavoriteFolderFacadeService 接口提供了对用户收藏夹的操作方法。
 */
public interface FavoriteFolderFacadeService {
    /**
     * 创建一个新的收藏夹。
     *
     * @param favoriteFolderDTO 包含收藏夹信息的 DTO 对象
     */
    void createFavoriteFolder(FavoriteFolderDTO favoriteFolderDTO);

    /**
     * 删除指定的收藏夹。
     *
     * @param favoriteFolderDTO 包含要删除的收藏夹信息的 DTO 对象
     */
    void deleteFavoriteFolder(FavoriteFolderDTO favoriteFolderDTO);

    /**
     * 根据用户 ID 获取所有收藏夹。
     *
     * @param userId 用户的唯一标识
     * @return 用户的所有收藏夹列表
     */
    List<FavoriteFolderVO> getAllFavoriteFolders(Long userId);
}
